#ifndef __CONTENTMANAGER_H__
#define __CONTENTMANAGER_H__
/////////////////
//include
/////////////////
#include"Model.h"
#include"Texture2D.h"
#include"Animation.h"
#include"SoundManager.h"
#include"Shader.h"
#include"Layout.h"
#include<map>
/////////////////
//const
/////////////////

/////////////////
//class
/////////////////
class ContentManager
{
public:
	ContentManager();
	~ContentManager();
	static Model*		LoadModel(std::string address,std::string file_name);
	static Texture2D*	LoadTexture(std::string file_name);
	static Animation*	LoadAnime(std::string file_name,int width_num,int height_num);
	static Shader*		LoadShader(std::string file_name,std::string vertex_shader,std::string pixele_shader,D3D11_INPUT_ELEMENT_DESC* layouts,int layout_count);
	static void			SetDevice(Device* device_){device = device_;}
	static void			Release();
private:
	static Device* device;
	static std::map<std::string,Model*>			models;
	static std::map<std::string,Texture2D*>		texs;
	static std::map<std::string,Animation*>		animations;
	static std::map<std::string ,Shader*>		shaders;
};
#endif __CONTENTMANAGER_H__
